package com.aletto.general_store.data;

import com.aletto.general_store.data.model.Address;
import com.aletto.general_store.data.model.Goods;
import com.aletto.general_store.data.model.GoodsDetails;
import com.aletto.general_store.data.model.OrderNumber;
import com.aletto.general_store.data.model.PageResponse;
import com.aletto.general_store.data.model.Response;
import com.aletto.general_store.data.model.Store;
import com.aletto.general_store.data.model.UserDetails;
import com.sisyphus.spinach.core.model.IPageResponse;
import com.sisyphus.spinach.core.model.IResponse;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Random;

import io.reactivex.rxjava3.core.Observable;

public class MockDataSource
//        implements IDataSource
{

//    @Override
//    public Observable<Response<PageResponse<Goods>>> homeGoods(int page, int size) {
//        return Observable.create(emitter -> {
//
//            PageResponse<Goods> pageResponse = new PageResponse<>(
//                    5,
//                    new ArrayList<>(
//                            Arrays.asList(
//                                    new Goods("9成新苹果快充iPhone5数据线一手货源1", 12.01F, "USDT", 16.9F, 9),
//                                    new Goods("9成新苹果快充iPhone5数据线一手货源2", 34.10F, "USDT", 35.9F, 4),
//                                    new Goods("9成新苹果快充iPhone5数据线一手货源3", 16F, "USDT", 20, 11),
//                                    new Goods("9成新苹果快充iPhone5数据线一手货源4", 17.9F, "ETH", 20, 34),
//                                    new Goods("9成新苹果快充iPhone5数据线一手货源5", 17.9F, "ETH", 20, 34),
//                                    new Goods("9成新苹果快充iPhone5数据线一手货源6", 17.9F, "ETH", 20, 34),
//                                    new Goods("9成新苹果快充iPhone5数据线一手货源7", 17.9F, "ETH", 20, 34),
//                                    new Goods("9成新苹果快充iPhone5数据线一手货源8", 17.9F, "ETH", 20, 34),
//                                    new Goods("9成新苹果快充iPhone5数据线一手货源9", 17.9F, "ETH", 20, 34),
//                                    new Goods("9成新苹果快充iPhone5数据线一手货源10", 69.99F, "USDT", 99.9F, 1)
//                            )
//                    )
//            );
//            emitter.onNext(new Response<>(pageResponse));
//
//            emitter.onComplete();
//        });
//    }
//
//    @Override
//    public Observable<Response<GoodsDetails>> getGoodsDetails(int id, int status) {
//        return null;
//    }
//
//    @Override
//    public Observable<Response<UserDetails>> login(String address) {
//        return null;
//    }
//
//    @Override
//    public Observable<Response<UserDetails>> userDetails() {
//        return null;
//    }
//
//
//    @Override
//    public Observable<Response<List<String>>> hotSearch() {
//        return Observable.create(emitter -> {
//
//            emitter.onNext(new Response<>(
//                    new ArrayList<>(
//                            Arrays.asList(
//                                    "iPhone15 Pro", "电子产品"
//                            )
//                    )
//            ));
//
//            emitter.onComplete();
//        });
//    }
//
//    @Override
//    public Observable<Response<PageResponse<Goods>>> searchGoods(int page, int size, String keyword) {
//        return null;
//    }
//
//    @Override
//    public Observable<Response<PageResponse<Store>>> storeLists(int page, int size, String keyword) {
//        return null;
//    }
//
//    @Override
//    public Observable<Response<List<String>>> searchPrompt(int type, String keyword) {
//        return null;
//    }
//
//    @Override
//    public Observable<Response<List<Address>>> addressList() {
//        return Observable.create(emitter -> {
//
//            emitter.onNext(new Response<>(
//                    new ArrayList<>(
//                            Arrays.asList(
//                                    new Address(),
//                                    new Address(),
//                                    new Address(),
//                                    new Address()
//                            )
//                    )
//            ));
//
//            emitter.onComplete();
//        });
//    }
//
//    @Override
//    public Observable<Response<Object>> addAddress(String name, String phone, String address) {
//        return null;
//    }
//
//    @Override
//    public Observable<Response<Object>> deleteAddress(int id) {
//        return null;
//    }
//
//    @Override
//    public Observable<Response<Object>> defaultAddress(int id) {
//        return null;
//    }
//
//    @Override
//    public Observable<Response<PageResponse<Goods>>> history(int page, int size) {
//        return null;
//    }
//
//    @Override
//    public Observable<Response<Object>> clearHistory(int id) {
//        return null;
//    }
//
//    @Override
//    public Observable<Response<OrderNumber>> myOrderInfo() {
//        return null;
//    }
//
//
//    public Observable<IResponse<List<String>>> searchKeyword(String keyword) {
//        return Observable.create(emitter -> {
//            int random = new Random(10).nextInt();
//            emitter.onNext(new Response<>(
//                    new ArrayList<>(
//                            Arrays.asList(
//                                    keyword + random,
//                                    random + keyword,
//                                    random + keyword + random
//                            )
//                    )
//            ));
//
//            emitter.onComplete();
//        });
//    }

}
